package com.treasure.infrastructure.model.po;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 * 
 * </p>
 *
 * @author sunhongmin
 * @since 2023-11-17
 */
@TableName("corp_user_info")
public class CorpUserInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 企业ID
     */
    private String corpId;

    /**
     * 用户ID
     */
    private String userId;

    /**
     * 用户名
     */
    private String username;

    /**
     * 头像
     */
    private String avatar;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 是否删除
     */
    private Boolean hasDeleted;

    /**
     * 是否超级管理员
     */
    private Boolean hasAdmin;

    private Boolean hasSuperAdmin;

    /**
     * 是否默认企业
     */
    private Boolean hasDefault;

    private String registerChannel;

    /**
     * 部门列表
     */
    private String departments;

    /**
     * 默认部门
     */
    private Integer defaultDepartment;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getCorpId() {
        return corpId;
    }

    public void setCorpId(String corpId) {
        this.corpId = corpId;
    }

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getAvatar() {
        return avatar;
    }

    public void setAvatar(String avatar) {
        this.avatar = avatar;
    }

    public LocalDateTime getCreateTime() {
        return createTime;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

    public Boolean getHasDeleted() {
        return hasDeleted;
    }

    public void setHasDeleted(Boolean hasDeleted) {
        this.hasDeleted = hasDeleted;
    }

    public Boolean getHasAdmin() {
        return hasAdmin;
    }

    public void setHasAdmin(Boolean hasAdmin) {
        this.hasAdmin = hasAdmin;
    }

    public Boolean getHasSuperAdmin() {
        return hasSuperAdmin;
    }

    public void setHasSuperAdmin(Boolean hasSuperAdmin) {
        this.hasSuperAdmin = hasSuperAdmin;
    }

    public Boolean getHasDefault() {
        return hasDefault;
    }

    public void setHasDefault(Boolean hasDefault) {
        this.hasDefault = hasDefault;
    }

    public String getRegisterChannel() {
        return registerChannel;
    }

    public void setRegisterChannel(String registerChannel) {
        this.registerChannel = registerChannel;
    }

    public String getDepartments() {
        return departments;
    }

    public void setDepartments(String departments) {
        this.departments = departments;
    }

    public Integer getDefaultDepartment() {
        return defaultDepartment;
    }

    public void setDefaultDepartment(Integer defaultDepartment) {
        this.defaultDepartment = defaultDepartment;
    }

    @Override
    public String toString() {
        return "CorpUserInfo{" +
        "id = " + id +
        ", corpId = " + corpId +
        ", userId = " + userId +
        ", username = " + username +
        ", avatar = " + avatar +
        ", createTime = " + createTime +
        ", hasDeleted = " + hasDeleted +
        ", hasAdmin = " + hasAdmin +
        ", hasSuperAdmin = " + hasSuperAdmin +
        ", hasDefault = " + hasDefault +
        ", registerChannel = " + registerChannel +
        ", departments = " + departments +
        ", defaultDepartment = " + defaultDepartment +
        "}";
    }
}
